最近入手了一台群辉入门级的 nas,但是由于用的是长城的宽带,所以你们懂的,群辉自带的外网访问的配置根本不起任何作用。但是在公司里又没法用 quickConnect 访问自己的 nas,所以没办法只能利用 frp 这种方式来实现在公司或者其他地方访问自己的 nas。
刚好自己买的有阿里云的服务器,还有阿里云买的域名。然后说搞就开始搞咯。
第一步
先在自己的域名控制台,解析好一个 A 类的二级域名,指向自己的服务器的 ip。
第二步
在自己购买的服务器上安装配置 frp 服务端
1、查看自己的服务器的 linux 内核
1 | # uname 指令 |
1 | # arch命令 |
自己选择对应的版本号即可。
如果 frp 版本选的不对,运营会爆如下错误:
1 | ./frpc: cannot execute binary file: Exec format error |
2、安装服务端
FRP RELEASE1
2
3
4
5
6
7
8
9
10
11
12
13
14#1、下载
wget https://github.com/fatedier/frp/releases/download/v0.12.0/frp_0.12.0_linux_amd64.tar.gz
#2、解压
tar -zxvf frp_0.12.0_linux_amd64.tar.gz
#3、进入对应目录
cd frp_0.12.0_linux_amd64
#4、删除客户端内容
rm -f frpc frpc_full.ini frpc.ini
#5、配置服务端
vim frps.ini
编辑如下:
1 | [common] |
解释:
[common] 必填的
bind_port Frp 服务端口(可自定义)
vhost_http_port http 访问端口(可自定义)
dashboard_port dashboard 界面端口 (可以不配置)
dashboard_user 登录 dashboard 用户名(可以不配置)
dashboard_pwd 登录 dashboard 密码(可以不配置)
max_pool_count 最大连接池数量
authentication_timeout 超时验证时间
subdomain_host 主域名[ssh]
listen_port ssh 访问端口
auth_token 用户身份认证(自定义)
1 | #6、启动 frp 服务器 |
第三步
配置 frp 客户端
客户端可以是 PC,Mac,NAS 等。
我是配置自己的 nas。
1、群晖必须开启 ssh
2、开始操作
1 | # 1、登录 nas |
编辑如下:
1 | [common] |
简单解释:
[common] 必填的
server_addr 服务器端公网
server_port frp 服务端口,和服务器端 bind_port 一致
auth_token 和前面服务器端 [ssh] auth_token 一致
pool_count 连接池数量
[ssh]
type 服务类型(tcp、http、https、udp)
local_ip NAS 本地局域网内网 ip
local_port NAS 开启 ssh 服务端口号,默认 22
remote_port 服务器端 ssh 端口,和服务器端 [ssh] listen_port 配置一致
[nas] NAS 管理界面
subdomain 二级域名 nas 访问 NAS
type = http 服务类型为 http
local_port NAS 默认端口 5000
[web] NAS web Station 服务,没用可以不用设置
type = http 类型为 http
local_port = 80 NAS web 服务端口
subdomain = web 二级域名 web.lekee.cc
使用自定义二级域名的时候,域名 *.lekee.cc 要解析到服务器 IP
1 | # 8、运行 |
到此结束。你可以愉快地通过自己的域名加上端口号访问自己的 nas 了。
好了,该休息了。
不对扶我起来,报错了。
1 | dial tcp x.x.x.x:xxxx: getsockopt: no route to host |
第四步
因为你还得在服务器防火墙中开放对应的端口
就是你在服务端配置的下面两个端口
1 | bind_port = 7000 |
具体的操作可以参考我的这篇文章
到此你应该能真正地愉快地访问了。
enjoy ~